package 面向对象_上.d方法;
/*
* 类中方法的声明和使用
*
* 方法：描述类应具有的功能
* 比如：Math类：sqrt()  random() ...
*      Arrays类：sort() toString() equals() ...
*
* 1.举例：
*  public void eat(){}
* public void sleep(int  hour){}
* public String getName() {}
* public  String GetNation(String nation){}
*
* 2.方法的声明：权限修饰符 返回值类型 方法名（形参列表）{
*               方法体
* }
*   注意：final、static、abstract来修饰方法
*
*  3. 说明：
*   3.1 关于权限修饰符
*       java规定的四种：private、public、缺省、protected  --->封装性
*   3.2 返回值类型：有返回值 vs 没有返回值
*       3.2.1 有返回值，必须在方法声明时候，指定返回值类型，同时方法中需要使用
*       return来返回指定类型的变量或者常量
*       如果方法没有返回值，使用void，不使用return，或者”return;“来表示此方法结束
*       3.2.2 我们定义的方法该不该有返回值？
*       （1）题目要求
*       （2）经验，具体问题具体分析
*   3.3 方法名：属于标识符，遵循标识符的规格和规范
*   3.4 形参列表：方法可以声明0个，1个，多个
*   3.5 方法体：方法功能的实现
*
*  4. return关键字的使用：
*   4.1 使用范围：使用在方法体内
*   4.2 作用：
*       4.2.1结束方法
*       4.2.2针对有返回值类型的方法，使用"return 数据;"方法返回所要的数据
*       4.2.3注意点：return后面不可以声明执行语句
*
*  5. 方法的使用
*   方法的使用，可以调用当前类的属性或者类的方法
*       特殊：递归
*   方法中不能定义方法
*
* */
public class CustomerTest {
    public static void main(String[] args) {
        Customer cust1 = new Customer();
        cust1.eat();
        cust1.sleep(10);
    }

}
class Customer{
//    属性
    String name;
    int age;
    boolean isMale;

//    方法
    public void eat(){
        System.out.println("客户吃饭");
        return;//结束方法
    }

    public void sleep(int  hour){
        System.out.println("睡觉" + hour);
        eat();
    }

    public String getName() {
        if(age > 10){
            return name;
        }else {
            return name;
        }
//        return name;
    }

    public  String GetNation(String nation){
        String info = "国籍" + nation;
        return info;
    }

//    方法中不能定义方法
//    public void info(){
//        public void swim(){
//
//        }
//    }

}